package com.fulihui.wgj.facade.dto;

import com.fulihui.common.enums.WxSystemConfigKeyEnum;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 第三方平台凭证信息
 *
 * @author wang_wx
 * @date 2017-10-16
 */
@Data
public class WxSystemConfigDTO implements Serializable {
    
    private static final long serialVersionUID = -1073663049454611293L;

    /**
     * 开放平台系统配置key 如component_access_token
     *
     * @see WxSystemConfigKeyEnum
     */
    private String code;

    /**
     * 描述
     */
    private String descript;

    private Date gmtCreate;

    private Date gmtModified;

    /**
     * 当前Ticket是否过期
     * @return
     */
    public boolean isExire(){
        /**
         * Token有效期 定为1小时50分
         */
        Long timeOut = (60 + 50) * 60 * 1000L;

        /**
         * Ticket有效期 定为9分
         */
        if(WxSystemConfigKeyEnum.component_verify_ticket.getCode().equals(code)){
            timeOut = 9 * 60 * 1000L;
        }

        //判断是否有效
        if(this.gmtModified!=null &&  (gmtModified.getTime()+timeOut)<System.currentTimeMillis()){
            return true;
        }
        return false;
    }
}
